(navigation image)
Home American Libraries | Canadian Libraries | Universal Library | Community Texts | Project Gutenberg | Children's Library | Biodiversity Heritage Library | Additional Collections
Search: Advanced Search
Anonymous User (login or join us)
Upload
See other formats

Full text of "Raw_Thought-txt"

djb
日本語
I think it’s time to remind people that D. J. Bernstein is the
greatest programmer in the history of the world.
First, look only at the objective facts. djb has written two major
pieces of system software: a mail server and a DNS server. Both are
run by millions of Internet domains. They accomplish all sorts of
complicated functions, work under incredibly high loads, and confront
no end of unusual situations. And they both run pretty much exactly
has Bernstein first wrote them. One bug — one bug! — was found in
qmail. A second bug was recently found in djbdns, but you can get a
sense of how important it is by the fact that it took people nearly a
decade to find it.
No other programmer has this kind of track record. Donald Knuth
probably comes closest, but his diary about writing TeX (printed inLiterate Programming)
shows how he kept finding bugs for years and never expected to be
finished, only to get closer and closer (thus the odd version
numbering scheme). Not only does no one else have djb’s track record,
no one else even comes close.
But far more important are the subjective factors. djb’s programs are
some of the greatest works of beauty to be comprehended by the human
mind. As with great art, the outline of the code is somehow visually
pleasing — there is balance and rhythm and meter that rivals even the
best typography. As with great poetry, every character counts — every
single one is there because it needs to be. But these programs are not
just for being seen or read — like a graceful dancer, they move! And
not just as a single dancer either, but a whole choreographed number
— processes splitting and moving and recombining at great speeds,
around and around again.
But, unlike a dance, this movement has a purpose. They accomplish
things that need accomplishing — they find your websites, they ferry
your email from place to place. In the most fantastic movies, the
routing and sorting of the post office is imagined as a giant endless
choreographed dance number. (Imagine, perhaps, “The Office” fromBrazil.) But this is no one-time fantasy, this is how your email
gets sortedevery day.
And the dance is not just there to please human eyes — it is a dance
with a purpose. Each of its inner mechanisms is perfectly crafted,
using the fewest number of moving parts, accomplishing its task with
the most minimal energy. The way jobs are divided and assigned is
nothing short of brilliant. The brilliance is not merely linguistic,
although it is that too, but contains a kind of elegant mathematical
effectiveness, backed by a stream of numbers and equations that show,
through pure reason alone, that the movements are provably perfect, a
better solution is guaranteed not to exist.
But even all this does not capture his software’s incredible beauty.
For djb’s programs are not great machines to be admired from a
distance, vast powerhouses of elegant accomplishment. They are also
tools meant to be used by man, perfectly fitted to one’s hand. Like a
great piece of industrial design, they bring joy to the user every
time they are used.
What other field combines all these arts? Language, math, art, design,
function. Programming is clearly in a class of its own. And, when it
comes to programmers, who even competes with djb? Who else has worked
to realize these amazing possibilities? Who else even knows they are
there?
Oddly, there are many people who profess to hate djb. Some of this is
just the general distaste of genius: djb clearly has a forceful,
uncompromising vision, which many misinterpret as arrogance and
rudeness. And some of it is the practical man’s disregard for great
design: djb’s programs do not work like most programs, for the simple
reason that the way most programs work is wrong. But the animosity
goes much deeper than that. I do not profess to understand it, but I
do honestly suspect at some level it’s people without taste angry and
frustrated at the plaudits showered on what they cannot see. Great art
always generates its share of mocking detractors.
This is not to say that djb’s work is perfect. There are the bugs, as
mentioned before, and the log files, which are nothing if not
inelegant, and no doubt djb would make numerous changes were he to
write the software again today. But who else is even trying? Who else
even knows this is possible? I did not realize what great art in
software could be until I read djb. And now I feel dirty reading
anything else.
More:You may also be interested inwhat djb is doing now.
You should follow me on twitterhere.
October 19, 2009